Most personal computers include a microprocessor or other data processing device for executing application programs, a disk drive for substantially permanent storage of application programs, computer memory for storing the application programs when they are being executed, and an operating system for interfacing the application programs with the computer. The application programs are typically stored on a fixed storage medium, such as a floppy disk or the disk drive of the personal computer, for access by the computer. To execute the application program, the user loads the application program into the computer memory, where it can be accessed more quickly by the computer. In these systems the application program is loaded into the computer memory by the operating system of the computer.
However, personal computers can be configured in a manner such that the application program is loaded by an operating system distinct from that of the personal computer for execution by the operating system of the personal computer. These configurations include operating system extensions that are provided for interfacing the operating system of the personal computer with a resource. In some cases, the operating system extensions will load their own application programs. As examples, networking systems include operating system extensions that load a certain class of application programs. As another example, memory managers include operating system extensions that load certain application programs.
In the configuration of a personal computer with an operating system extension, the operating system of the personal computer has no opportunity to perform functions associated with the loading of the application program into the memory space of the operating system extension. Accordingly, functions that are associated with the loading of an application program and are unique to the operating system of the computer cannot be performed. Since the performance of these functions may be necessary for proper operation of the application program with the computer, it is desirable to provide method for enabling the operating system of a computer to perform these functions when an application program is being loaded into the memory space of an operating system extension.
More particularly, some application programs must be revised to enable the application program to operate properly with the configuration of the computer. One manner of revision is to associate a version number of the operating system of the personal computer with the application program so that the application program will recognize the operating system. Another manner of revision is to replace predetermined instructions and data of the application program with alternate instructions and data so that the application program is compatible with a personal computer configured with the operating system stored in the high memory area (HMA). These revisions, and the reasons therefor, are discussed in greater detail in U.S. patent application Ser. No. 07/847,525, entitled Method For Storing Programs, by Eric Straub et al., filed Mar. 6, 1992 (concurrently herewith), the disclosure of which is incorporated herein by the foregoing reference thereto.
Accordingly, it is desirable to provide a method for enabling the operating system of a personal computer to revise an application program when it is stored in the memory space of an operating system extension.